/*
 * @Author: liuzelin
 * @Date: 2023-09-09 09:49:05
 * @LastEditors: liuzelin
 * @LastEditTime: 2024-04-17 22:06:34
 * @Description: file content
 */
#pragma once
#include "panda_export.hpp"
#include <functional>
#include <cstdint>

namespace Panda
{
    class PANDA_EXPORT Timer
    {
    public:
        typedef std::function<void(Timer*)> OnTimer;
        virtual ~Timer() = default;
        virtual void Start(uint64_t timeOutMs, OnTimer &&onTimer) = 0;
        virtual void Stop() = 0;
    };
} // namespace Panda
